Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define XxxStream.prototype.onread as an accessor in JavaScript sense #183

Merged

Conversation

isheludko
Copy link

Previously is was defined via soon-to-be-deprecated v8::ObjectTemplate::SetAccessor(..) which used to call setter even for property stores via stream object.

The replacement V8 Api v8::ObjectTemplate::SetNativeDataProperty(..) defines a properly behaving data property and thus a store to a stream object will not trigger the "onread" setter callback.

In order to preserve the desired behaviour of storing the value in the receiver's internal field the "onread" property should be defined as a proper JavaScript accessor.

Previously is was defined via soon-to-be-deprecated
`v8::ObjectTemplate::SetAccessor(..)` which used to call setter even
for property stores via stream object.

The replacement V8 Api `v8::ObjectTemplate::SetNativeDataProperty(..)`
defines a properly behaving data property and thus a store to a stream
object will not trigger the "onread" setter callback.

In order to preserve the desired behavior of storing the value in the
receiver's internal field the "onread" property should be defined as
a proper JavaScript accessor.
@victorgomes victorgomes merged commit b5a7a8a into v8:node-ci-2024-04-23 Apr 30, 2024
12 of 15 checks passed
victorgomes added a commit that referenced this pull request Jun 3, 2024
…183)

Previously is was defined via soon-to-be-deprecated
`v8::ObjectTemplate::SetAccessor(..)` which used to call setter even
for property stores via stream object.

The replacement V8 Api `v8::ObjectTemplate::SetNativeDataProperty(..)`
defines a properly behaving data property and thus a store to a stream
object will not trigger the "onread" setter callback.

In order to preserve the desired behavior of storing the value in the
receiver's internal field the "onread" property should be defined as
a proper JavaScript accessor.
# Conflicts:
#	src/base_object-inl.h
pthier pushed a commit that referenced this pull request Jul 15, 2024
…183)

Previously is was defined via soon-to-be-deprecated
`v8::ObjectTemplate::SetAccessor(..)` which used to call setter even
for property stores via stream object.

The replacement V8 Api `v8::ObjectTemplate::SetNativeDataProperty(..)`
defines a properly behaving data property and thus a store to a stream
object will not trigger the "onread" setter callback.

In order to preserve the desired behavior of storing the value in the
receiver's internal field the "onread" property should be defined as
a proper JavaScript accessor.
# Conflicts:
#	src/base_object-inl.h
victorgomes added a commit that referenced this pull request Aug 22, 2024
…183)

Previously is was defined via soon-to-be-deprecated
`v8::ObjectTemplate::SetAccessor(..)` which used to call setter even
for property stores via stream object.

The replacement V8 Api `v8::ObjectTemplate::SetNativeDataProperty(..)`
defines a properly behaving data property and thus a store to a stream
object will not trigger the "onread" setter callback.

In order to preserve the desired behavior of storing the value in the
receiver's internal field the "onread" property should be defined as
a proper JavaScript accessor.
# Conflicts:
#	src/base_object-inl.h
pthier pushed a commit that referenced this pull request Oct 2, 2024
…183)

Previously is was defined via soon-to-be-deprecated
`v8::ObjectTemplate::SetAccessor(..)` which used to call setter even
for property stores via stream object.

The replacement V8 Api `v8::ObjectTemplate::SetNativeDataProperty(..)`
defines a properly behaving data property and thus a store to a stream
object will not trigger the "onread" setter callback.

In order to preserve the desired behavior of storing the value in the
receiver's internal field the "onread" property should be defined as
a proper JavaScript accessor.
# Conflicts:
#	src/base_object-inl.h
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants